package com.azusa.common.transform.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 命名空间注解，主要是在JavaBean转换成XML字符串时使用。
 * 在XMl中，可能在一些element的标签内存在namespace。
 * 这个注解主要作为@NameSpaces中一个元素来使用，暂不支持独立使用。
 * <p>类功能说明:</p>
 * e.g.:一个Soap的root element，<soapenv:Envelope
 *	xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
 *	xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
 *	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 *	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 *	xmlns被定义在了@NameSpaces中，@NameSpace中的prefix就可以设置为"soapenv","soapenc"...,
 *	而@NameSpace中的url就可以设置为"http://schemas.xmlsoap.org/soap/envelope/"...
 * <p>Class Function Description:</p>
 * <p>Title: NameSpace.java</p> 
 * <p>Description:Azusa</p>
 * <p>Copyright: Copyright © 2013 Leonard Lan.All Rights Reserved.</p>
 * <p>Company:Azusa</p>
 * @author Leonard Lan
   @date Oct 16, 2013 10:58:01 AM
 * @version v1.0
 * @since azusa-commons v1.0.0
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD})
public @interface NameSpace {
	/***/
	public String prefix();
	
	public String url();
	
	public String location() default "";
}
